package com.yst.system.service;

import java.util.List;

import com.yst.common.core.domain.AjaxResult;
import com.yst.common.core.domain.entity.SysUser;
import com.yst.system.domain.BasItem;
import com.yst.system.domain.IndexQueryParams;
import org.springframework.web.multipart.MultipartFile;

/**
 * 产品信息Service接口
 * 
 * @author hoj
 * @date 2024-05-10
 */
public interface IBasItemService {
    /**
     * 查询产品信息
     * 
     * @param itemId 产品信息主键
     * @return 产品信息
     */
    public BasItem selectBasItemByItemId(Long itemId);

    /**
     * 查询产品信息列表
     * 
     * @param basItem 产品信息
     * @return 产品信息集合
     */
    public List<BasItem> selectBasItemList(BasItem basItem);

    /**
     * 新增产品信息
     * 
     * @param basItem 产品信息
     * @return 结果
     */
    public int insertBasItem(BasItem basItem);

    /**
     * 修改产品信息
     * 
     * @param basItem 产品信息
     * @return 结果
     */
    public int updateBasItem(BasItem basItem);

    /**
     * 批量删除产品信息
     * 
     * @param itemIds 需要删除的产品信息主键集合
     * @return 结果
     */
    public int deleteBasItemByItemIds(Long[] itemIds);

    /**
     * 删除产品信息信息
     * 
     * @param itemId 产品信息主键
     * @return 结果
     */
    public int deleteBasItemByItemId(Long itemId);

    /**
     * 导入用户数据
     *
     * @param userList 用户数据列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作用户
     * @return 结果
     */
    String importItem(List<BasItem> userList, boolean isUpdateSupport, String operName);

    String importImg(MultipartFile file);

    AjaxResult saleByItem(IndexQueryParams indexQueryParams);
}
